/**
 * 自定义Prop
 */
export type ElSelectCustomerProps = {
    /**
     * 是否多选
     */
    multiple?: boolean
    /**
     * 是否禁用
     */
    disabled?: boolean
    /**
     * 输入框尺寸
     */
    size?: '' | 'large' | 'default' | 'small'
    /**
     * 是否可以清空选项
     */
    clearable?: boolean
    /**
     * 最多可以选择的项目数
     */
    multipleLimit?: number
    /**
     * 提示
     */
    placeholder?: string
    /**
     * 是否可搜索
     */
    filterable?: boolean
}

/**
 * 自定义Emit
 */
export type ElSelectCustomerEvents<Prop> = {
    /**
     * 值改变
     */
    change: (data: Prop) => void
    /**
     * 出现/隐藏时触发
     */
    visibleChange: (data: boolean) => void
    /**
     * 清空
     */
    clear: () => void
    /**
     * 失去焦点
     */
    blue: (e: FocusEvent) => void
    /**
     * 获得焦点
     */
    focus: (e: FocusEvent) => void
}

/**
 * 自定义属性
 */
export type ElSelectCustomerExtend = {
    /**
     * 选项
     */
    optionsData: ElSelectOptionsData
}

/**
 * 下拉选项
 */
export type ElSelectOptionsData = {
    /**
     * 反射数据
     */
    reflect?: string
    /**
     * key值
     */
    label: string
    /**
     * 值
     */
    value: string
    /**
     * 列表
     */
    list?: Array<any>
}
